{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "notes"
    }
   },
   "source": [
    "# Introduction\n",
    "\n",
    "The **[Pima](https://en.wikipedia.org/wiki/Pima_people)** are a group of **Native Americans** living in Arizona. A genetic predisposition allowed this group to survive normally to a diet poor of carbohydrates for years. In the recent years, because of a sudden shift from traditional agricultural crops to processed foods, together with a decline in physical activity, made them develop **the highest prevalence of type 2 diabetes** and for this reason they have been subject of many studies.\n",
    "\n",
    "## Dataset\n",
    "\n",
    "The dataset includes data from **768** women with **8** characteristics, in particular:\n",
    "\n",
    "1. Number of times pregnant\n",
    "2. Plasma glucose concentration a 2 hours in an oral glucose tolerance test\n",
    "3. Diastolic blood pressure (mm Hg)\n",
    "4. Triceps skin fold thickness (mm)\n",
    "5. 2-Hour serum insulin (mu U/ml)\n",
    "6. Body mass index (weight in kg/(height in m)^2)\n",
    "7. Diabetes pedigree function\n",
    "8. Age (years)\n",
    "\n",
    "The last column of the dataset indicates if the person has been diagnosed with diabetes (1) or not (0)\n",
    "\n",
    "### Source\n",
    "\n",
    "The original dataset is available at **UCI Machine Learning Repository** and can be downloaded from this address: http://archive.ics.uci.edu/ml/datasets/Pima+Indians+Diabetes\n",
    "\n",
    "## The problem\n",
    "\n",
    "The type of dataset and problem is a classic **supervised binary classification**. Given a number of elements all with certain characteristics (features), we want to build a machine learning model to identify people affected by type 2 diabetes.\n",
    "\n",
    "To solve the problem we will have to analyse the data, do any required transformation and normalisation, apply a machine learning algorithm, train a model, check the performance of the trained model and iterate with other algorithms until we find the most performant for our type of dataset."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "# Imports and configuration"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "outputs": [],
   "source": [
    "import os\n",
    "import pandas as pd\n",
    "import numpy as np\n",
    "import warnings\n",
    "\n",
    "warnings.filterwarnings(action='ignore', category=DeprecationWarning)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "# Dataset\n",
    "\n",
    "The dataset is available to download from [nrvis](http://nrvis.com/data/mldata/pima-indians-diabetes.csv). If you are using the AOA Demo Instance, we already have this dataset preloaded into Teradata and split into test and train datasets. For reference, the code used was \n",
    "\n",
    "```python\n",
    "import pandas as pd\n",
    "from teradataml.dataframe.copy_to import copy_to_sql\n",
    "from teradataml.context.context import get_connection\n",
    "from teradataml.dataframe.dataframe import DataFrame\n",
    "\n",
    "df = pd.read_csv(\"http://nrvis.com/data/mldata/pima-indians-diabetes.csv\", header=None)\n",
    "df.columns = [\n",
    "    \"NumTimesPrg\", \"PlGlcConc\", \"BloodP\", \"SkinThick\", \"TwoHourSerIns\", \"BMI\", \"DiPedFunc\", \"Age\", \"HasDiabetes\"]\n",
    "\n",
    "copy_to_sql(df = df, table_name = \"PIMA\", index=True, index_label=\"PatientId\", if_exists=\"replace\")\n",
    "\n",
    "df = DataFrame(\"PIMA\").sample(frac=[0.8, 0.2])\n",
    "\n",
    "copy_to_sql(df = df[df.sampleid==1], table_name = \"PIMA_TRAIN\", index=False, if_exists=\"replace\")\n",
    "copy_to_sql(df = df[df.sampleid==2], table_name = \"PIMA_TEST\", index=False, if_exists=\"replace\")\n",
    "\n",
    "```"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "outputs": [
    {
     "name": "stdin",
     "output_type": "stream",
     "text": [
      "password ··········\n"
     ]
    }
   ],
   "source": [
    "from teradataml.dataframe.dataframe import DataFrame\n",
    "from teradataml import create_context\n",
    "import getpass\n",
    "\n",
    "engine = create_context(host=\"3.238.151.85\", username=\"AOA_DEMO\", password=getpass.getpass(\"password\"))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "# Inspect the Dataset"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>NumTimesPrg</th>\n",
       "      <th>PlGlcConc</th>\n",
       "      <th>BloodP</th>\n",
       "      <th>SkinThick</th>\n",
       "      <th>TwoHourSerIns</th>\n",
       "      <th>BMI</th>\n",
       "      <th>DiPedFunc</th>\n",
       "      <th>Age</th>\n",
       "      <th>HasDiabetes</th>\n",
       "      <th>PatientId</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>8</td>\n",
       "      <td>183</td>\n",
       "      <td>64</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>23.3</td>\n",
       "      <td>0.672</td>\n",
       "      <td>32</td>\n",
       "      <td>1</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0</td>\n",
       "      <td>137</td>\n",
       "      <td>40</td>\n",
       "      <td>35</td>\n",
       "      <td>168</td>\n",
       "      <td>43.1</td>\n",
       "      <td>2.288</td>\n",
       "      <td>33</td>\n",
       "      <td>1</td>\n",
       "      <td>4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>5</td>\n",
       "      <td>116</td>\n",
       "      <td>74</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>25.6</td>\n",
       "      <td>0.201</td>\n",
       "      <td>30</td>\n",
       "      <td>0</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>3</td>\n",
       "      <td>78</td>\n",
       "      <td>50</td>\n",
       "      <td>32</td>\n",
       "      <td>88</td>\n",
       "      <td>31.0</td>\n",
       "      <td>0.248</td>\n",
       "      <td>26</td>\n",
       "      <td>1</td>\n",
       "      <td>6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>2</td>\n",
       "      <td>197</td>\n",
       "      <td>70</td>\n",
       "      <td>45</td>\n",
       "      <td>543</td>\n",
       "      <td>30.5</td>\n",
       "      <td>0.158</td>\n",
       "      <td>53</td>\n",
       "      <td>1</td>\n",
       "      <td>8</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   NumTimesPrg  PlGlcConc  BloodP  SkinThick  TwoHourSerIns   BMI  DiPedFunc  \\\n",
       "0            8        183      64          0              0  23.3      0.672   \n",
       "1            0        137      40         35            168  43.1      2.288   \n",
       "2            5        116      74          0              0  25.6      0.201   \n",
       "3            3         78      50         32             88  31.0      0.248   \n",
       "4            2        197      70         45            543  30.5      0.158   \n",
       "\n",
       "   Age  HasDiabetes  PatientId  \n",
       "0   32            1          2  \n",
       "1   33            1          4  \n",
       "2   30            0          5  \n",
       "3   26            1          6  \n",
       "4   53            1          8  "
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "dataset = DataFrame(\"PIMA\").to_pandas()\n",
    "# Visualise a table with the first rows of the dataset, to\n",
    "# better understand the data format\n",
    "dataset.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>NumTimesPrg</th>\n",
       "      <th>PlGlcConc</th>\n",
       "      <th>BloodP</th>\n",
       "      <th>SkinThick</th>\n",
       "      <th>TwoHourSerIns</th>\n",
       "      <th>BMI</th>\n",
       "      <th>DiPedFunc</th>\n",
       "      <th>Age</th>\n",
       "      <th>HasDiabetes</th>\n",
       "      <th>PatientId</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>NumTimesPrg</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.129459</td>\n",
       "      <td>0.141282</td>\n",
       "      <td>-0.081672</td>\n",
       "      <td>-0.073535</td>\n",
       "      <td>0.017683</td>\n",
       "      <td>-0.033523</td>\n",
       "      <td>0.544341</td>\n",
       "      <td>0.221898</td>\n",
       "      <td>-0.037201</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>PlGlcConc</th>\n",
       "      <td>0.129459</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.152590</td>\n",
       "      <td>0.057328</td>\n",
       "      <td>0.331357</td>\n",
       "      <td>0.221071</td>\n",
       "      <td>0.137337</td>\n",
       "      <td>0.263514</td>\n",
       "      <td>0.466581</td>\n",
       "      <td>0.012994</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>BloodP</th>\n",
       "      <td>0.141282</td>\n",
       "      <td>0.152590</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.207371</td>\n",
       "      <td>0.088933</td>\n",
       "      <td>0.281805</td>\n",
       "      <td>0.041265</td>\n",
       "      <td>0.239528</td>\n",
       "      <td>0.065068</td>\n",
       "      <td>0.020953</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>SkinThick</th>\n",
       "      <td>-0.081672</td>\n",
       "      <td>0.057328</td>\n",
       "      <td>0.207371</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.436783</td>\n",
       "      <td>0.392573</td>\n",
       "      <td>0.183928</td>\n",
       "      <td>-0.113970</td>\n",
       "      <td>0.074752</td>\n",
       "      <td>0.019006</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>TwoHourSerIns</th>\n",
       "      <td>-0.073535</td>\n",
       "      <td>0.331357</td>\n",
       "      <td>0.088933</td>\n",
       "      <td>0.436783</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.197859</td>\n",
       "      <td>0.185071</td>\n",
       "      <td>-0.042163</td>\n",
       "      <td>0.130548</td>\n",
       "      <td>0.001998</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>BMI</th>\n",
       "      <td>0.017683</td>\n",
       "      <td>0.221071</td>\n",
       "      <td>0.281805</td>\n",
       "      <td>0.392573</td>\n",
       "      <td>0.197859</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.140647</td>\n",
       "      <td>0.036242</td>\n",
       "      <td>0.292695</td>\n",
       "      <td>0.012320</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>DiPedFunc</th>\n",
       "      <td>-0.033523</td>\n",
       "      <td>0.137337</td>\n",
       "      <td>0.041265</td>\n",
       "      <td>0.183928</td>\n",
       "      <td>0.185071</td>\n",
       "      <td>0.140647</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.033561</td>\n",
       "      <td>0.173844</td>\n",
       "      <td>-0.040326</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Age</th>\n",
       "      <td>0.544341</td>\n",
       "      <td>0.263514</td>\n",
       "      <td>0.239528</td>\n",
       "      <td>-0.113970</td>\n",
       "      <td>-0.042163</td>\n",
       "      <td>0.036242</td>\n",
       "      <td>0.033561</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.238356</td>\n",
       "      <td>0.007714</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>HasDiabetes</th>\n",
       "      <td>0.221898</td>\n",
       "      <td>0.466581</td>\n",
       "      <td>0.065068</td>\n",
       "      <td>0.074752</td>\n",
       "      <td>0.130548</td>\n",
       "      <td>0.292695</td>\n",
       "      <td>0.173844</td>\n",
       "      <td>0.238356</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>-0.045184</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>PatientId</th>\n",
       "      <td>-0.037201</td>\n",
       "      <td>0.012994</td>\n",
       "      <td>0.020953</td>\n",
       "      <td>0.019006</td>\n",
       "      <td>0.001998</td>\n",
       "      <td>0.012320</td>\n",
       "      <td>-0.040326</td>\n",
       "      <td>0.007714</td>\n",
       "      <td>-0.045184</td>\n",
       "      <td>1.000000</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "               NumTimesPrg  PlGlcConc    BloodP  SkinThick  TwoHourSerIns  \\\n",
       "NumTimesPrg       1.000000   0.129459  0.141282  -0.081672      -0.073535   \n",
       "PlGlcConc         0.129459   1.000000  0.152590   0.057328       0.331357   \n",
       "BloodP            0.141282   0.152590  1.000000   0.207371       0.088933   \n",
       "SkinThick        -0.081672   0.057328  0.207371   1.000000       0.436783   \n",
       "TwoHourSerIns    -0.073535   0.331357  0.088933   0.436783       1.000000   \n",
       "BMI               0.017683   0.221071  0.281805   0.392573       0.197859   \n",
       "DiPedFunc        -0.033523   0.137337  0.041265   0.183928       0.185071   \n",
       "Age               0.544341   0.263514  0.239528  -0.113970      -0.042163   \n",
       "HasDiabetes       0.221898   0.466581  0.065068   0.074752       0.130548   \n",
       "PatientId        -0.037201   0.012994  0.020953   0.019006       0.001998   \n",
       "\n",
       "                    BMI  DiPedFunc       Age  HasDiabetes  PatientId  \n",
       "NumTimesPrg    0.017683  -0.033523  0.544341     0.221898  -0.037201  \n",
       "PlGlcConc      0.221071   0.137337  0.263514     0.466581   0.012994  \n",
       "BloodP         0.281805   0.041265  0.239528     0.065068   0.020953  \n",
       "SkinThick      0.392573   0.183928 -0.113970     0.074752   0.019006  \n",
       "TwoHourSerIns  0.197859   0.185071 -0.042163     0.130548   0.001998  \n",
       "BMI            1.000000   0.140647  0.036242     0.292695   0.012320  \n",
       "DiPedFunc      0.140647   1.000000  0.033561     0.173844  -0.040326  \n",
       "Age            0.036242   0.033561  1.000000     0.238356   0.007714  \n",
       "HasDiabetes    0.292695   0.173844  0.238356     1.000000  -0.045184  \n",
       "PatientId      0.012320  -0.040326  0.007714    -0.045184   1.000000  "
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "corr = dataset.corr()\n",
    "corr"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "notes"
    }
   },
   "source": [
    "I'm not a doctor and I don't have any knowledge of medicine, but from the data I can guess that **the greater the age or the BMI of a patient is, the greater probabilities are the patient can develop type 2 diabetes**."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "# Visualise the Dataset"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<AxesSubplot:>"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "%matplotlib inline\n",
    "import seaborn as sns\n",
    "sns.heatmap(corr, annot = True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1440x1080 with 12 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "dataset.hist(bins=50, figsize=(20, 15))\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "notes"
    }
   },
   "source": [
    "An important thing I notice in the dataset (and that wasn't obvious at the beginning) is the fact that some people have **null (zero) values** for some of the features: it's not quite possible to have 0 as BMI or for the blood pressure.\n",
    "\n",
    "How can we deal with similar values? We will see it later during the **data transformation** phase."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "# Splitting the Dataset into Train & Test\n",
    "\n",
    "As already higlighted in the introduction to the notebook, we have already split the dataset and they are available in PIMA_TRAIN and PIMA_TEST."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "from teradataml.dataframe.dataframe import DataFrame\n",
    "\n",
    "train_set = DataFrame(\"PIMA_TRAIN\").to_pandas()\n",
    "test_set = DataFrame(\"PIMA_TEST\").to_pandas()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "outputs": [],
   "source": [
    "# Separate labels from the rest of the dataset\n",
    "train_set_labels = train_set[\"HasDiabetes\"]\n",
    "train_set = train_set.drop(\"HasDiabetes\", axis=1)\n",
    "\n",
    "test_set_labels = test_set[\"HasDiabetes\"]\n",
    "test_set = test_set.drop(\"HasDiabetes\", axis=1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "# Data cleaning and transformation"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "notes"
    }
   },
   "source": [
    "We have noticed from the previous analysis that some patients have missing data for some of the features. Machine learning algorithms don't work very well when the data is missing so we have to find a solution to \"clean\" the data we have.\n",
    "\n",
    "The easiest option could be to eliminate all those patients with null/zero values, but in this way we would eliminate a lot of important data.\n",
    "\n",
    "Another option is to calculate the **median** value for a specific column and substitute that value everywhere (in the same column) we have zero or null. Let's see how to apply this second method."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "# Feature Scaling"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "notes"
    }
   },
   "source": [
    "One of the most important data transformations we need to apply is the **features scaling**. Basically most of the machine learning **algorithms don't work very well if the features have a different set of values**. In our case for example the Age ranges from 20 to 80 years old, while the number of times a patient has been pregnant ranges from 0 to 17. For this reason we need to apply a proper transformation."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "outputs": [],
   "source": [
    "# Apply a scaler\n",
    "from sklearn.preprocessing import MinMaxScaler as Scaler\n",
    "\n",
    "scaler = Scaler()\n",
    "scaler.fit(train_set)\n",
    "train_set_scaled = scaler.transform(train_set)\n",
    "test_set_scaled = scaler.transform(test_set)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "source": [
    "## Scaled Values"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>0</th>\n",
       "      <th>1</th>\n",
       "      <th>2</th>\n",
       "      <th>3</th>\n",
       "      <th>4</th>\n",
       "      <th>5</th>\n",
       "      <th>6</th>\n",
       "      <th>7</th>\n",
       "      <th>8</th>\n",
       "      <th>9</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.294118</td>\n",
       "      <td>0.585859</td>\n",
       "      <td>0.606557</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.381520</td>\n",
       "      <td>0.052519</td>\n",
       "      <td>0.150000</td>\n",
       "      <td>0.006519</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.588235</td>\n",
       "      <td>0.580808</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.526080</td>\n",
       "      <td>0.023911</td>\n",
       "      <td>0.133333</td>\n",
       "      <td>0.009126</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.117647</td>\n",
       "      <td>0.994949</td>\n",
       "      <td>0.573770</td>\n",
       "      <td>0.454545</td>\n",
       "      <td>0.729839</td>\n",
       "      <td>0.454545</td>\n",
       "      <td>0.034159</td>\n",
       "      <td>0.533333</td>\n",
       "      <td>0.010430</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.470588</td>\n",
       "      <td>0.631313</td>\n",
       "      <td>0.786885</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.065756</td>\n",
       "      <td>0.550000</td>\n",
       "      <td>0.011734</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0.588235</td>\n",
       "      <td>0.848485</td>\n",
       "      <td>0.606557</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.566319</td>\n",
       "      <td>0.195986</td>\n",
       "      <td>0.216667</td>\n",
       "      <td>0.014342</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "          0         1         2         3         4         5         6  \\\n",
       "0  0.294118  0.585859  0.606557  0.000000  0.000000  0.381520  0.052519   \n",
       "1  0.588235  0.580808  0.000000  0.000000  0.000000  0.526080  0.023911   \n",
       "2  0.117647  0.994949  0.573770  0.454545  0.729839  0.454545  0.034159   \n",
       "3  0.470588  0.631313  0.786885  0.000000  0.000000  0.000000  0.065756   \n",
       "4  0.588235  0.848485  0.606557  0.000000  0.000000  0.566319  0.195986   \n",
       "\n",
       "          7         8    9  \n",
       "0  0.150000  0.006519  0.0  \n",
       "1  0.133333  0.009126  0.0  \n",
       "2  0.533333  0.010430  0.0  \n",
       "3  0.550000  0.011734  0.0  \n",
       "4  0.216667  0.014342  0.0  "
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df = pd.DataFrame(data=train_set_scaled)\n",
    "df.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "# Select and train a model"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "notes"
    }
   },
   "source": [
    "It's not possible to know in advance which algorithm will work better with our dataset. We need to compare a few and select the one with the \"best score\"."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "source": [
    "## Comparing multiple algorithms"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "notes"
    }
   },
   "source": [
    "To compare multiple algorithms with the same dataset, there is a very nice utility in sklearn called **model_selection**. We create a list of algorithms and then we score them using the same comparison method. At the end we pick the one with the best score."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "outputs": [],
   "source": [
    "# Import all the algorithms we want to test\n",
    "from sklearn.linear_model import LogisticRegression\n",
    "from sklearn.ensemble import RandomForestClassifier\n",
    "from xgboost import XGBClassifier"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "outputs": [],
   "source": [
    "# Import the slearn utility to compare algorithms\n",
    "from sklearn import model_selection"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "outputs": [],
   "source": [
    "# Prepare an array with all the algorithms\n",
    "models = []\n",
    "models.append(('LR', LogisticRegression()))\n",
    "models.append(('RFC', RandomForestClassifier()))\n",
    "models.append(('XGB', XGBClassifier()))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "outputs": [],
   "source": [
    "# Prepare the configuration to run the test\n",
    "seed = 7\n",
    "results = []\n",
    "names = []\n",
    "X = train_set_scaled\n",
    "Y = train_set_labels"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/Users/wf250003/anaconda3/envs/aoa/lib/python3.6/site-packages/sklearn/model_selection/_split.py:297: FutureWarning: Setting a random_state has no effect since shuffle is False. This will raise an error in 0.24. You should leave random_state to its default (None), or set shuffle=True.\n",
      "  FutureWarning\n",
      "/Users/wf250003/anaconda3/envs/aoa/lib/python3.6/site-packages/sklearn/model_selection/_split.py:297: FutureWarning: Setting a random_state has no effect since shuffle is False. This will raise an error in 0.24. You should leave random_state to its default (None), or set shuffle=True.\n",
      "  FutureWarning\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "LR: 0.770545 (0.073811)\n",
      "RFC: 0.759254 (0.090880)\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/Users/wf250003/anaconda3/envs/aoa/lib/python3.6/site-packages/sklearn/model_selection/_split.py:297: FutureWarning: Setting a random_state has no effect since shuffle is False. This will raise an error in 0.24. You should leave random_state to its default (None), or set shuffle=True.\n",
      "  FutureWarning\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "XGB: 0.729984 (0.080952)\n"
     ]
    }
   ],
   "source": [
    "# Every algorithm is tested and results are\n",
    "# collected and printed\n",
    "\n",
    "for name, model in models:\n",
    "    kfold = model_selection.KFold(\n",
    "        n_splits=10, random_state=seed)\n",
    "    cv_results = model_selection.cross_val_score(\n",
    "        model, X, Y, cv=kfold, scoring='accuracy')\n",
    "    results.append(cv_results)\n",
    "    names.append(name)\n",
    "    print(\"%s: %f (%f)\" % (name, cv_results.mean(), cv_results.std()))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# boxplot algorithm comparison\n",
    "fig = plt.figure()\n",
    "fig.suptitle('Algorithm Comparison')\n",
    "ax = fig.add_subplot(111)\n",
    "plt.boxplot(results)\n",
    "ax.set_xticklabels(names)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "notes"
    }
   },
   "source": [
    "It looks like that using this comparison method, the most performant algorithm is **XGBoost**."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "## Find the best parameters for XGB"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "notes"
    }
   },
   "source": [
    "The default parameters for an algorithm are rarely the best ones for our dataset. Using sklearn we can easily build a parameters grid and try all the possible combinations. At the end we inspect the `best_estimator_` property and get the best ones for our dataset."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "GridSearchCV(cv=10, estimator=XGBClassifier(),\n",
       "             param_grid={'learning_rate': [0.1, 0.2], 'max_depth': [4, 6, 8]},\n",
       "             scoring='accuracy')"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from sklearn.model_selection import GridSearchCV\n",
    "\n",
    "param_grid = {\n",
    "    'learning_rate': [0.1, 0.2],\n",
    "    'max_depth': [4, 6, 8]\n",
    "}\n",
    "\n",
    "model_xgb = XGBClassifier()\n",
    "\n",
    "grid_search = GridSearchCV(model_xgb, param_grid, cv=10, scoring='accuracy')\n",
    "grid_search.fit(train_set_scaled, train_set_labels)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.7460867265996827"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Print the bext score found\n",
    "grid_search.best_score_"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "## Create Model Configuration\n",
    "\n",
    "The requirements file with the dependencies and versions\n",
    "\n",
    "```\n",
    "%%writefile ../model_modules/requirements.txt\n",
    "xgboost==0.90\n",
    "scikit-learn==0.22.2\n",
    "shap==0.36.0\n",
    "matplotlib==2.2.2\n",
    "teradataml>=17.0.0.0\n",
    "nyoka>=4.3.0\n",
    "```\n",
    "\n",
    "The hyper parameter configuration (defaults)\n",
    "```\n",
    "%%writefile ../config.json\n",
    "{\n",
    "\t\"hyperParameters\": {\n",
    "\t\t\"eta\": 0.2,\n",
    "\t\t\"max_depth\": 6\n",
    "\t}\n",
    "}\n",
    "```"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Create Model Trainer\n",
    "\n",
    "Next create the training.py "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "# %%writefile ../training.py\n",
    "\n",
    "from xgboost import XGBClassifier\n",
    "from sklearn.preprocessing import MinMaxScaler\n",
    "from sklearn.pipeline import Pipeline\n",
    "from nyoka import xgboost_to_pmml\n",
    "from teradataml import create_context\n",
    "from teradataml.dataframe.dataframe import DataFrame\n",
    "\n",
    "import joblib\n",
    "import os\n",
    "\n",
    "\n",
    "def train(data_conf, model_conf, **kwargs):\n",
    "    hyperparams = model_conf[\"hyperParameters\"]\n",
    "\n",
    "    create_context(host=data_conf[\"host\"], username=os.environ['TD_USERNAME'], password=os.environ['TD_PASSWORD'])\n",
    "\n",
    "    feature_names = [\"NumTimesPrg\", \"PlGlcConc\", \"BloodP\", \"SkinThick\", \"TwoHourSerIns\", \"BMI\", \"DiPedFunc\", \"Age\"]\n",
    "    target_name = \"HasDiabetes\"\n",
    "\n",
    "    # read training dataset from Teradata and convert to pandas\n",
    "    train_df = DataFrame(data_conf[\"table\"])\n",
    "    train_df = train_df.select([feature_names + [target_name]])\n",
    "    train_df = train_df.to_pandas()\n",
    "\n",
    "    # split data into X and y\n",
    "    X_train = train_df.drop(target_name, 1)\n",
    "    y_train = train_df[target_name]\n",
    "\n",
    "    print(\"Starting training...\")\n",
    "\n",
    "    # fit model to training data\n",
    "    model = Pipeline([('scaler', MinMaxScaler()),\n",
    "                     ('xgb', XGBClassifier(eta=hyperparams[\"eta\"],\n",
    "                                           max_depth=hyperparams[\"max_depth\"]))])\n",
    "    # xgboost saves feature names but lets store on pipeline for easy access later\n",
    "    model.feature_names = feature_names\n",
    "    model.target_name = target_name\n",
    "\n",
    "    model.fit(X_train, y_train)\n",
    "\n",
    "    print(\"Finished training\")\n",
    "\n",
    "    # export model artefacts\n",
    "    joblib.dump(model, \"artifacts/output/model.joblib\")\n",
    "    xgboost_to_pmml(pipeline=model, col_names=feature_names, target_name=target_name, pmml_f_name=\"artifacts/output/model.pmml\")\n",
    "\n",
    "    print(\"Saved trained model\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Validate Model Trainer\n",
    "\n",
    "You will need to update `base_path` to point to the root of your repository. This changes depending on the jupyter notebook session."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [],
   "source": [
    "import aoa\n",
    "from aoa import TrainModel, EvaluateModel\n",
    "from aoa import ModelUtility\n",
    "\n",
    "model_util = ModelUtility(base_path=\"../../../\", repo_template_catalog=None)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "train.train(\n",
    "    model_id='03c9a01f-bd46-4e7c-9a60-4282039094e6', \n",
    "    data_conf={'host': '3.238.151.85', 'table': 'PIMA_TRAIN'})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "total 164\n",
      "-rw-r--r-- 1 jovyan users 166678 Jul  3 09:49 model.joblib\n"
     ]
    }
   ],
   "source": [
    "!ls -l .artefacts/03c9a01f-bd46-4e7c-9a60-4282039094e6/"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "## Create Evaluation\n",
    "\n",
    "Then create evaluation.py"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [],
   "source": [
    "# %%writefile ../scoring.py\n",
    "from sklearn import metrics\n",
    "from teradataml import create_context\n",
    "from teradataml.dataframe.dataframe import DataFrame\n",
    "from teradataml.dataframe.copy_to import copy_to_sql\n",
    "\n",
    "import os\n",
    "import joblib\n",
    "import json\n",
    "import pandas as pd\n",
    "\n",
    "\n",
    "def save_plot(title):\n",
    "    import matplotlib.pyplot as plt\n",
    "\n",
    "    plt.title(title)\n",
    "    fig = plt.gcf()\n",
    "    filename = title.replace(\" \", \"_\").lower()\n",
    "    fig.savefig('artifacts/output/{}'.format(filename), dpi=500)\n",
    "    plt.clf()\n",
    "\n",
    "\n",
    "def evaluate(data_conf, model_conf, **kwargs):\n",
    "    model = joblib.load('artifacts/input/model.joblib')\n",
    "\n",
    "    create_context(host=os.environ[\"AOA_CONN_HOST\"],\n",
    "                   username=os.environ[\"AOA_CONN_USERNAME\"],\n",
    "                   password=os.environ[\"AOA_CONN_PASSWORD\"])\n",
    "\n",
    "    # Read test dataset from Teradata\n",
    "    # As this is for demo purposes, we simulate the test dataset changing between executions\n",
    "    # by introducing a random sample. Note that the sampling is performed in Teradata!\n",
    "    test_df = DataFrame(data_conf[\"table\"]).sample(frac=0.8)\n",
    "    test_df = test_df.to_pandas()\n",
    "\n",
    "    X_test = test_df[model.feature_names]\n",
    "    y_test = test_df[model.target_name]\n",
    "\n",
    "    print(\"Scoring\")\n",
    "    y_pred = model.predict(test_df[model.feature_names])\n",
    "\n",
    "    evaluation = {\n",
    "        'Accuracy': '{:.2f}'.format(metrics.accuracy_score(y_test, y_pred)),\n",
    "        'Recall': '{:.2f}'.format(metrics.recall_score(y_test, y_pred)),\n",
    "        'Precision': '{:.2f}'.format(metrics.precision_score(y_test, y_pred)),\n",
    "        'f1-score': '{:.2f}'.format(metrics.f1_score(y_test, y_pred))\n",
    "    }\n",
    "\n",
    "    with open(\"artifacts/output/metrics.json\", \"w+\") as f:\n",
    "        json.dump(evaluation, f)\n",
    "\n",
    "    metrics.plot_confusion_matrix(model, X_test, y_test)\n",
    "    save_plot('Confusion Matrix')\n",
    "\n",
    "    metrics.plot_roc_curve(model, X_test, y_test)\n",
    "    save_plot('ROC Curve')\n",
    "\n",
    "    # xgboost has its own feature importance plot support but lets use shap as explainability example\n",
    "    import shap\n",
    "\n",
    "    shap_explainer = shap.TreeExplainer(model['xgb'])\n",
    "    shap_values = shap_explainer.shap_values(X_test)\n",
    "\n",
    "    shap.summary_plot(shap_values, X_test, feature_names=model.feature_names,\n",
    "                      show=False, plot_size=(12,8), plot_type='bar')\n",
    "    save_plot('SHAP Feature Importance')\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Evaluate Model Scorer"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Loading and executing model code\n",
      "model metrics: {'Accuracy': 0.7337662337662337, 'Recall': 0.6909090909090909, 'Precision': 0.6129032258064516, 'f1-score': 0.6495726495726496}\n",
      "Artefacts can be found in: .artefacts/03c9a01f-bd46-4e7c-9a60-4282039094e6\n",
      "Evaluation metrics can be found in: .artefacts/03c9a01f-bd46-4e7c-9a60-4282039094e6/evaluation.json\n"
     ]
    }
   ],
   "source": [
    "evaluate.evaluate(\n",
    "    model_id='03c9a01f-bd46-4e7c-9a60-4282039094e6', \n",
    "    data_conf={'host': '3.238.151.85', 'table': 'PIMA_TEST', 'predictions': 'PIMA_PREDICTIONS'})"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Model Scoring\n",
    "\n",
    "Finally, create the scoring.py\n",
    "\n",
    "- Batch Scoring (def score)\n",
    "- RESTful Scoring (ModelScorer.predict)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# %%writefile ../scoring.py\n",
    "from sklearn import metrics\n",
    "from teradataml import create_context\n",
    "from teradataml.dataframe.dataframe import DataFrame\n",
    "from teradataml.dataframe.copy_to import copy_to_sql\n",
    "\n",
    "import os\n",
    "import joblib\n",
    "import json\n",
    "import pandas as pd\n",
    "\n",
    "\n",
    "def score(data_conf, model_conf, **kwargs):\n",
    "    model = joblib.load(\"artifacts/input/model.joblib\")\n",
    "\n",
    "    create_context(host=os.environ[\"AOA_CONN_HOST\"],\n",
    "                   username=os.environ[\"AOA_CONN_USERNAME\"],\n",
    "                   password=os.environ[\"AOA_CONN_PASSWORD\"])\n",
    "\n",
    "    predict_df = DataFrame(data_conf[\"table\"])\n",
    "\n",
    "    # convert to pandas to use locally\n",
    "    predict_df = predict_df.to_pandas()\n",
    "\n",
    "    print(\"Scoring\")\n",
    "    y_pred = model.predict(predict_df[model.feature_names])\n",
    "\n",
    "    print(\"Finished Scoring\")\n",
    "\n",
    "    # create result dataframe and store in Teradata\n",
    "    y_pred = pd.DataFrame(y_pred, columns=[\"pred\"])\n",
    "    y_pred[\"PatientId\"] = predict_df[\"PatientId\"].values\n",
    "    copy_to_sql(df=y_pred, table_name=data_conf[\"predictions\"], index=False, if_exists=\"replace\")\n",
    "\n",
    "    \n",
    "# Add code required for RESTful API\n",
    "class ModelScorer(object):\n",
    "\n",
    "    def __init__(self, config=None):\n",
    "        self.model = joblib.load('artifacts/input/model.joblib')\n",
    "\n",
    "        from prometheus_client import Counter\n",
    "        self.pred_class_counter = Counter('model_prediction_classes',\n",
    "                                          'Model Prediction Classes', ['model', 'version', 'clazz'])\n",
    "\n",
    "    def predict(self, data):\n",
    "        pred = self.model.predict([data])\n",
    "\n",
    "        # record the predicted class so we can check model drift (via class distributions)\n",
    "        self.pred_class_counter.labels(model=os.environ[\"MODEL_NAME\"],\n",
    "                                       version=os.environ.get(\"MODEL_VERSION\", \"1.0\"),\n",
    "                                       clazz=str(int(pred))).inc()\n",
    "\n",
    "        return pred\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "model_util.batch_score_model_local(\n",
    "    model_id='03c9a01f-bd46-4e7c-9a60-4282039094e6', \n",
    "    data_conf={'host': '3.238.151.85', 'table': 'PIMA_TEST', 'predictions': 'PIMA_PREDICTIONS'})"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "notes"
    }
   },
   "source": [
    "## Credits\n",
    "\n",
    "https://github.com/andreagrandi/ml-pima-notebook"
   ]
  }
 ],
 "metadata": {
  "celltoolbar": "Slideshow",
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.12"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
